﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Bastanteo.Dominio;
using NHibernate;
using NHibernate.Criterion;

namespace Bastanteo.Persistencia.NH
{
    public class BastanteoDAO : BaseDAO<CBastanteo, Int32>, IBastanteoDAO
    {

        public CBastanteo ObtenerPorGrupoPoder(Int32 codigoGrupo, Int32 codigoPoder)
        {
            using (ISession sesion = NHibernateHelper.ObtenerSesion())
            {
                ICriteria busqueda = sesion.CreateCriteria(typeof(CBastanteo));
                busqueda.Add(Restrictions.Eq("CodigoGrupo.CodigoGrupo", codigoGrupo));
                busqueda.Add(Restrictions.Eq("CodigoPoder.CodigoPoder", codigoPoder));
                //busqueda.Add(Restrictions.And(Restrictions.Eq("CodigoGrupo", codigoGrupo), Restrictions.Eq("CodigoPoder", codigoPoder)));
                return busqueda.UniqueResult<CBastanteo>();
            }

        }

        public CBastanteo ObtenerPorPoder(Int32 codigoPoder)
        {
            using (ISession sesion = NHibernateHelper.ObtenerSesion())
            {
                ICriteria busqueda = sesion.CreateCriteria(typeof(CBastanteo));
                busqueda.Add(Restrictions.Eq("CodigoPoder.CodigoPoder", codigoPoder));
                return busqueda.UniqueResult<CBastanteo>();
            }

        }
    }
}